package com.ruoyi.spspublic.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import lombok.Data;

import java.util.Date;

@Data
public class BranchVO {

    /** 组织唯一id */
    private String ctId;

    /** 单据编号 */
    private String ctCode;

    /** 单据类型 */
    private String ctType;

    /** 党组织全称 */
    @Excel(name = "组织全称")
    private String ctName;

    /** 当前步骤 */
    private String ctCurStepno;

    /** 历史步骤 */
    private String ctHisStepno;

    /** 创建部门 */
    private String ctCreateDept;

    /** 创建人 */
    private String ctCreateUser;

    /** 创建日期 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "创建日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date dtCreateDate;

    /** 发送人 */
    private String ctSendP;

    /** 接收人 */
    private String ctInceptP;

    /** 上级单位编码 */
    private String ctCodeP1;

    /** 接收类型（p:人b:组织r:角色） */
    private String ctInceptType;

    /** 本级单位编码 */
    private String ctCodeP2;

    /** 签发状态 */
    private String ctEnd;

    /** 备注 */
    private String ctMark;

    /** iso编号 */
    private String ctCodeIso;

    /** 功能号 */
    private String ctFunNo;

    /** 任务单编号 */
    private String ctTaskId;

    /** 更新人 */
    private String ctUpdateUser;

    /** 更新日期 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "更新日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date dtUpdateDate;

    /** 组织类别 */
    @Excel(name = "组织类别", dictType = "157")
    private String ctBranchCategory;

    /** 党组织星级 */
    private String ctStarRating;

    /** 属地关系 */
    @Excel(name = "属地关系", dictType = "155")
    private String ctTerritorialRelations;

    /** 领导班子当选日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date dtLeadershipDate;

    /** 选举方式 */
    private String ctElectionMethod;

    /** 届次 */
    private String ctSession;

    /** 应到人数 */
    private Long amShouldAttend;

    /** 实到人数 */
    private Long amActualNumber;

    /** 本届届满日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date dtExpiryDate;

    /** 批准建立党组织日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "建立日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date dtCreationDate;

    /** 通讯地址 */
    @Excel(name = "通讯地址")
    private String ctAddress;

    /** 邮政编码 */
    private String ctPostcode;

    /** 联系电话 */
    @Excel(name = "联系电话")
    private String ctContactNumber;

    /** 传真号码 */
    private String ctFaxNumber;

    /** 党组织简称 */
    @Excel(name = "组织简称")
    private String ctBranchAbbreviation;

    /** 排序 */
    private Long amSort;

    /** 状态 */
    private String ctState;

    /** 在岗职工总数 */
    private Long amOndutySum;

    /** 退休职工总数 */
    private String amRetirementSum;

    /** 党组织联系人 */
    @Excel(name = "联系人")
    private String ctContacts;

    /** 本级退休职工数 */
    private String amThislevelSum;

    /** 单位隶属行政区域 */
    private String ctCompanyRegion;

    /** 单位名称 */
    @Excel(name = "单位名称")
    private String ctCompanyName;

    /** 备用字段1 */
    private String ctOther1;

    /** 单位性质 */
    private String ctCompanyType;

    /** 备用字段2 */
    private String ctOther2;

    /** 所属单位情况 */
    @Excel(name = "单位情况", dictType = "168")
    private String ctCompanyUnit;

    /** 备用字段3 */
    private String ctOther3;

    /** 是否为法人单位(1：是 0：否) */
    @Excel(name = "法人单位标识", dictType = "300")
    private String ctCompanyEntity;

    /** 备用字段4 */
    private String ctOther4;

    /** 党员总数(汇总本级及下级) */
    private Long amPartymanTotal;

    /** 备用字段5 */
    private String ctOther5;

    /** 申请人总数(汇总本级及下级) */
    private Long amApplicantTotal;

    /** 积极分子总数(汇总本级及下级) */
    private Long amActivistTotal;

    /** 单位情况修改标识 */
    private Boolean changeCompanyUnit;

    /** 上级单位名称 */
    @Excel(name = "上级单位")
    private String parentCompany;
}
